package practice1_100;

import java.util.Arrays;

public class Practice213copy {
    public int rob(int[] nums) {
        if(nums.length==1) return nums[0];
        int a=djjs(nums,0, nums.length-2);
        int b=djjs(nums,1, nums.length-1);
        return Math.max(a,b);
//        int[] dpTable=new int[nums.length];
//        dpTable[0]=nums[0];
//        for (int i = 1; i < nums.length; i++) {
//            if(i==1)
//                dpTable[i]=Math.max(dpTable[i-1],nums[i] );
//            else
//                dpTable[i]=Math.max(dpTable[i-1],dpTable[i-2]+nums[i] );
//        }
//        return dpTable[dpTable.length-1];
    }
    public int djjs(int[] nums,int start,int end){
        int[] dpTable=new int[end-start+1];
        for (int i=0;i< dpTable.length&&end>=start;i++,start++){
            if(i==0) dpTable[i]=nums[start];
            else if (i==1) dpTable[i]=Math.max(dpTable[i-1],nums[start] );
            else     dpTable[i]=Math.max(dpTable[i-1],dpTable[i-2]+nums[start] );
        }
        return dpTable[dpTable.length-1];
    }

    public static void main(String[] args) {
        int a=new Practice213copy().rob(new int[]{1,2,3,1});

    }
}
